package com.cmc.cloud.cmclink.doc.entity;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.cmes.framework.mybatis.core.dataobject.BaseDO;
import lombok.*;

/**
 * 订舱航次路径 DO
 *
 * @author 陈正
 */
@TableName("doc_so_vslvoy")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class SoVslvoyDO extends BaseDO {

    /**
     * 主键
     */
    @TableId
    private Long id;
    /**
     * 外键
     */
    private Long soId;
    /**
     * 航程序号 第一程1，第二程2，第三程3 以此类推 中转提单，每一程都要批舱
     */
    private Integer routeNo;
    /**
     * 航线代码出口
     */
    private String laneCodeEx;
    /**
     * 航线代码进口
     */
    private String laneCodeIm;
    /**
     * 船名代码
     */
    private String vesselCode;
    /**
     * 出口航次
     */
    private String voyageEx;
    /**
     * 进口航次
     */
    private String voyageIm;
    /**
     * 装货港代码
     */
    private String polCode;

    /**
     * 卸货港代码
     */
    private String podCode;

    /**
     * 运输类型 第一个liner   四个选项：liner、truck、train、barge
     */
    private String transmode;
    /**
     * 指定装货点
     */
    private String stuffLocEx;
    /**
     * 指定卸货堆场
     */
    private String stuffLocIm;
    /**
     * 批舱状态 中转提单，每一程都要批舱 数据字典key=doc_space_status Pending待批舱 Approved已批舱 Rejected拒绝批舱 Pending On Space 待定批舱
     */
    private String spaceApproveStatus;
    /**
     * 进入自动批舱队列标识（队列跑完后标记清除防止人工同时审批）
     */
    private Boolean inAutoApproveTrack;
    /**
     * 自动批舱已经处理过标识
     */
    private Boolean autoApproceProcessFlag;
    /**
     * 操船方
     */
    private String vesselOperator;
    /**
     * 舱位冷插数分配id
     */
    private Long allocationId;

    /**
     * 舱位冷插数分配id 返回
     */
    private Long returnAllocationId;
}
